//
//  main.m
//  OcLesson_01类和对象
//
//  Created by dllo on 16/2/24.
//  Copyright © 2016年 Apon. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "Person.h"/**导入头文件.*/

int main(int argc, const char * argv[]) {

#pragma mark - 知识点1: 类和对象
    /**
     * 类: 由实例变量(特征)和方法(行为)组成.
     * 面向对象编程三大步: 定义类, 创建对象, 使用对象.
     */

#pragma mark - 1.1 类的定义
    /** 详见Person.h 和Person.m类文件. */
    
    
#pragma mark - 1.2 创建对象
#if 0
    //1.开辟空间.
    Person *person1 = [Person alloc];
    //2.初始化
    person1 = [person1 init];

    //alloc之后必须初始化,所以通常alloc和init方法连在一起写.
    Person *person2 = [[Person alloc] init];
#endif
    
#pragma mark - 知识点2: 使用对象
#if 0
    /**使用对象,就是调用方法(功能).*/
    //创建对象
    Person *person1 = [[Person alloc] init];
    //使用对象(调用方法).
    [person1 info];
    [person1 sayHi];
#endif
    
#pragma mark - 知识点3: 实例变量的操作
    
    Person *person1 = [[Person alloc] init];
    
    //实例变量的赋值.
    person1->_name = @"朱彦名";
    person1->_age = 18;
    
    //实例变量的取值.
    NSLog(@"name: %@",person1->_name);
    NSLog(@"age: %d",person1->_age);
    //调用对象方法
    [person1 info];
    
    
    
    
    
    
    
    
    
    
    
    
    return 0;
}
